Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: implement profile settings feature #808

Merged
merged 26 commits into from
Feb 1, 2023

Conversation

OgDev-01
Copy link
Contributor

@OgDev-01 OgDev-01 commented Jan 27, 2023

What type of PR is this? (check all applicable)

  • πŸ• Feature
  • πŸ› Bug Fix
  • πŸ“ Documentation Update
  • 🎨 Style
  • πŸ§‘β€πŸ’» Code Refactor
  • πŸ”₯ Performance Improvements
  • βœ… Test
  • πŸ€– Build
  • πŸ” CI
  • πŸ“¦ Chore (Release)
  • ⏩ Revert

Description

This PR:

  • implements the user profile update settings screen
  • adds email regex check from SO https://stackoverflow.com/a/46181/13002614
  • adds settings and userprofile link to the top user auth dropdown
  • fix card horizontal bar chart to show language name on hover
  • Implements user email preference update functionality

Notes:

  • the profile update is limited to just email, interests and email preference for now
  • all text input fields are disabled except the email for now

Related Tickets & Documents

Fixes #794
Fixes #784
Fixes #785
Fixes #798
Fixes #810

Mobile & Desktop Screenshots/Recordings

image

image

Added tests?

  • πŸ‘ yes
  • πŸ™… no, because they aren't needed
  • πŸ™‹ no, because I need help

Added to documentation?

  • πŸ“œ README.md
  • πŸ““ docs.opensauced.pizza
  • πŸ• dev.to/opensauced
  • πŸ“• storybook
  • πŸ™… no documentation needed

[optional] Are there any post-deployment tasks we need to perform?

[optional] What gif best describes this PR or how it makes you feel?

@netlify
Copy link

netlify bot commented Jan 27, 2023

βœ… Deploy Preview for oss-insights ready!

Name Link
πŸ”¨ Latest commit f240786
πŸ” Latest deploy log https://app.netlify.com/sites/oss-insights/deploys/63d977c698059b000872a90d
😎 Deploy Preview https://deploy-preview-808--oss-insights.netlify.app
πŸ“± Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site settings.

@netlify
Copy link

netlify bot commented Jan 27, 2023

βœ… Deploy Preview for design-insights ready!

Name Link
πŸ”¨ Latest commit f240786
πŸ” Latest deploy log https://app.netlify.com/sites/design-insights/deploys/63d977c663b234000a2cda41
😎 Deploy Preview https://deploy-preview-808--design-insights.netlify.app
πŸ“± Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site settings.

@OgDev-01 OgDev-01 marked this pull request as ready for review January 28, 2023 12:53
@OgDev-01 OgDev-01 added the needs review PRs that need review from core engineering team label Jan 28, 2023
Copy link
Member

@bdougie bdougie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few copy changes. Also mentioned this a few times, but we need UTC in the timezone list.

Starts from UTC-12 and goes to UTC+14. UTC with no disjuncture should show in this list.

https://en.wikipedia.org/wiki/List_of_UTC_offsets

Screen Shot 2023-01-28 at 9 14 13 AM

Missing data

We can use the user data displayed on the profile from ContributorProfileInfo as placeholders instead of the April O'Neal design copy. Assuming the user can only view this page if they are logged, we should be able to get that data.

For Twitter, we can add "coming soon" as placeholder.

Screen Shot 2023-01-28 at 9 19 30 AM

@bdougie bdougie added requested changes and removed needs review PRs that need review from core engineering team labels Jan 28, 2023
@getaheaddev
Copy link

Instead of using the github profile photo use the SVG. It'll prevent it from be over used.

person-icon f2841f1e

Screenshot 2023-01-28 at 5 11 52 PM

Screenshot 2023-01-28 at 5 12 00 PM

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR Compliance Checks

Thank you for your Pull Request! We have run several checks on this pull request in order to make sure it's suitable for merging into this project. The results are listed in the following section.

Watched Files

This pull request modifies specific files that require careful review by the maintainers.

Files Matched

  • npm-shrinkwrap.json
  • package.json

@OgDev-01 OgDev-01 requested a review from bdougie January 30, 2023 17:53
@OgDev-01 OgDev-01 added needs review PRs that need review from core engineering team and removed requested changes labels Jan 30, 2023
Copy link
Member

@bdougie bdougie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remind me Sunday, is getting an error expected?

  • can add the 🚫 cursor on the disabled fields?
  • Updating my timezone is not working. Pictured below.
  • Can't click any checkbox?
  • Need to remove avatar and use the person svg

Also @brandonroberts are the elements like bio, url, and twitter username available in the api?

Screen Shot 2023-01-30 at 9 57 22 AM

@bdougie
Copy link
Member

bdougie commented Jan 30, 2023

  • Updating my timezone is not working. Pictured below.

Screen Shot 2023-01-30 at 10 09 53 AM

@brandonroberts
Copy link
Contributor

@bdougie yes those are available in the authenticated session and the public user profile data

@bdougie
Copy link
Member

bdougie commented Jan 30, 2023

@bdougie yes those are available in the authenticated session and the public user profile data

Ok @OgDev-01 if these are available can we add these in the UI, or come up with a plan to update them shortly after. We got a slow start on this feature and I'd love to ship what is usable as soon as possible.

@OgDev-01
Copy link
Contributor Author

@bdougie yes those are available in the authenticated session and the public user profile data

Ok @OgDev-01 if these are available can we add these in the UI, or come up with a plan to update them shortly after. We got a slow start on this feature and I'd love to ship what is usable as soon as possible.

What is the URL field intended for?

@brandonroberts
Copy link
Contributor

brandonroberts commented Jan 30, 2023

@OgDev-01 the url field could be their primary website or some other URL they have on their GitHub profile data

@bdougie
Copy link
Member

bdougie commented Jan 30, 2023

@OgDev-01 the url field could be their primary website or some other URL they have on their GitHub profile data

Mine is currently https://b.dougie.dev

I'd also recommend we updated th placeholder copy to be ContributorInfo that is already display on the profile pages on your other PR.

Copy link
Member

@bdougie bdougie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. Thanks for keeping this on track.

Copy link
Contributor

@0-vortex 0-vortex left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some stray console.logs and branch not updated to latest beta but LGTM otherwise! πŸ‘

Copy link
Contributor

@brandonroberts brandonroberts left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Need to remove the cached auth/session hook, but LGTM

@brandonroberts
Copy link
Contributor

@OgDev-01 the Update Profile button is disabled initially until you update the email field. It should be enabled by default if the email is valid.

Copy link
Contributor

@brandonroberts brandonroberts left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@brandonroberts
Copy link
Contributor

@OgDev-01 just needs the fix on the build failure and we're good to merge

@OgDev-01 OgDev-01 merged commit 4a8d706 into beta Feb 1, 2023
@OgDev-01 OgDev-01 deleted the 794-implement-profile-settings branch February 1, 2023 14:49
github-actions bot pushed a commit that referenced this pull request Feb 1, 2023
## [1.25.0-beta.11](v1.25.0-beta.10...v1.25.0-beta.11) (2023-02-01)

### πŸ• Features

* implement profile settings feature ([#808](#808)) ([4a8d706](4a8d706))
@github-actions
Copy link
Contributor

github-actions bot commented Feb 1, 2023

πŸŽ‰ This PR is included in version 1.25.0-beta.11 πŸŽ‰

The release is available on GitHub release

Your semantic-release bot πŸ“¦πŸš€

github-actions bot pushed a commit that referenced this pull request Feb 2, 2023
## [1.26.0-beta.1](v1.25.0...v1.26.0-beta.1) (2023-02-02)

### πŸ• Features

* add profile badge to connected user profile ([#824](#824)) ([e3a1fcf](e3a1fcf)), closes [#821](#821) [#820](#820)
* add user location and bio details to profile page ([#797](#797)) ([a301874](a301874))
* implement profile settings feature ([#808](#808)) ([4a8d706](4a8d706))

### πŸ› Bug Fixes

* connect more user profile settings to the API ([#826](#826)) ([01b8bc0](01b8bc0))
@github-actions
Copy link
Contributor

github-actions bot commented Feb 2, 2023

πŸŽ‰ This PR is included in version 1.26.0-beta.1 πŸŽ‰

The release is available on GitHub release

Your semantic-release bot πŸ“¦πŸš€

github-actions bot pushed a commit that referenced this pull request Feb 2, 2023
## [1.26.0-beta.1](v1.25.0...v1.26.0-beta.1) (2023-02-02)

### πŸ• Features

* add profile badge to connected user profile ([#824](#824)) ([e3a1fcf](e3a1fcf)), closes [#821](#821) [#820](#820)
* add user location and bio details to profile page ([#797](#797)) ([a301874](a301874))
* implement profile settings feature ([#808](#808)) ([4a8d706](4a8d706))

### πŸ› Bug Fixes

* connect more user profile settings to the API ([#826](#826)) ([01b8bc0](01b8bc0))

### πŸ€– Build System

* correct dep versioning ([42a1b0a](42a1b0a))
* update some dependencies ([f522f5e](f522f5e))
@github-actions
Copy link
Contributor

github-actions bot commented Feb 2, 2023

πŸŽ‰ This PR is included in version 1.26.0-beta.1 πŸŽ‰

The release is available on GitHub release

Your semantic-release bot πŸ“¦πŸš€

github-actions bot pushed a commit that referenced this pull request Feb 2, 2023
## [1.26.0](v1.25.0...v1.26.0) (2023-02-02)

### πŸ• Features

* add profile badge to connected user profile ([#824](#824)) ([e3a1fcf](e3a1fcf)), closes [#821](#821) [#820](#820)
* add user location and bio details to profile page ([#797](#797)) ([a301874](a301874))
* implement profile settings feature ([#808](#808)) ([4a8d706](4a8d706))

### πŸ› Bug Fixes

* connect more user profile settings to the API ([#826](#826)) ([01b8bc0](01b8bc0))

### πŸ€– Build System

* correct dep versioning ([42a1b0a](42a1b0a))
* update some dependencies ([f522f5e](f522f5e))
@github-actions
Copy link
Contributor

github-actions bot commented Feb 2, 2023

πŸŽ‰ This PR is included in version 1.26.0 πŸŽ‰

The release is available on GitHub release

Your semantic-release bot πŸ“¦πŸš€

0-vortex added a commit that referenced this pull request Feb 2, 2023
* origin/main: (37 commits)
  chore(minor): release 1.26.0 [skip ci]
  chore(minor): release 1.26.0-beta.1 on beta channel [skip ci]
  build: update some dependencies
  build: correct dep versioning
  chore(patch): release 1.25.0-beta.14 on beta channel [skip ci]
  fix: connect more user profile settings to the API (#826)
  chore(minor): release 1.25.0-beta.13 on beta channel [skip ci]
  feat: add profile badge to connected user profile (#824)
  chore(minor): release 1.25.0-beta.12 on beta channel [skip ci]
  feat: add user location and bio details to profile page (#797)
  chore(minor): release 1.25.0-beta.11 on beta channel [skip ci]
  feat: implement profile settings feature (#808)
  chore(minor): release 1.25.0 [skip ci] (#818)
  chore(minor): release 1.25.0 [skip ci]
  v1.25.0-beta.10 -> production (#815)
  chore(minor): release 1.25.0-beta.10 on beta channel [skip ci]
  feat: set insight repo limit based on role (#813)
  chore(patch): release 1.25.0-beta.9 on beta channel [skip ci]
  fix: use correct avatar URL for caching  (#800)
  chore(minor): release 1.25.0-beta.8 on beta channel [skip ci]
  ...
ElpisHelle added a commit to ElpisHelle/next.js-tailwindcss that referenced this pull request Aug 17, 2023
## [1.25.0-beta.11](open-sauced/app@v1.25.0-beta.10...v1.25.0-beta.11) (2023-02-01)

### πŸ• Features

* implement profile settings feature ([#808](open-sauced/app#808)) ([4a8d706](open-sauced/app@4a8d706))
ElpisHelle added a commit to ElpisHelle/next.js-tailwindcss that referenced this pull request Aug 17, 2023
## [1.26.0-beta.1](open-sauced/app@v1.25.0...v1.26.0-beta.1) (2023-02-02)

### πŸ• Features

* add profile badge to connected user profile ([#824](open-sauced/app#824)) ([e3a1fcf](open-sauced/app@e3a1fcf)), closes [#821](open-sauced/app#821) [#820](open-sauced/app#820)
* add user location and bio details to profile page ([#797](open-sauced/app#797)) ([a301874](open-sauced/app@a301874))
* implement profile settings feature ([#808](open-sauced/app#808)) ([4a8d706](open-sauced/app@4a8d706))

### πŸ› Bug Fixes

* connect more user profile settings to the API ([#826](open-sauced/app#826)) ([01b8bc0](open-sauced/app@01b8bc0))

### πŸ€– Build System

* correct dep versioning ([42a1b0a](open-sauced/app@42a1b0a))
* update some dependencies ([f522f5e](open-sauced/app@f522f5e))
ElpisHelle added a commit to ElpisHelle/next.js-tailwindcss that referenced this pull request Aug 17, 2023
## [1.26.0](open-sauced/app@v1.25.0...v1.26.0) (2023-02-02)

### πŸ• Features

* add profile badge to connected user profile ([#824](open-sauced/app#824)) ([e3a1fcf](open-sauced/app@e3a1fcf)), closes [#821](open-sauced/app#821) [#820](open-sauced/app#820)
* add user location and bio details to profile page ([#797](open-sauced/app#797)) ([a301874](open-sauced/app@a301874))
* implement profile settings feature ([#808](open-sauced/app#808)) ([4a8d706](open-sauced/app@4a8d706))

### πŸ› Bug Fixes

* connect more user profile settings to the API ([#826](open-sauced/app#826)) ([01b8bc0](open-sauced/app@01b8bc0))

### πŸ€– Build System

* correct dep versioning ([42a1b0a](open-sauced/app@42a1b0a))
* update some dependencies ([f522f5e](open-sauced/app@f522f5e))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs review PRs that need review from core engineering team released on @beta released
Projects
None yet
5 participants